'''
类属性:创建完类之后,在下面函数外协的属性名=属性值(值是已知),这个属性就叫做类属性
特点:能通过类名,属性名调用   也可以对象名,属性名调用

对象竖向:放在初始化函数里面的属性
特点:只用对象名,属性名只能调用

类函数:需要在对象函数上面加一个修饰器-----@classmethon
特点:只用对象名,属性名能调用

对象属性:
特点:只能通过对象名,函数名调用

'''
class Dog:
    name = "大黄"
    def __init__(self,color,type):
        self.color=color
        self.type=type
    def eat(self):
        print("今天换个口味")
    @classmethod
    def run (self):
        print("一路跑到小日本")

if __name__== '__main__':
    a=Dog("黄色","中华田园犬")
    #使用对象名.属性名/函数名 调用属性/行为
    print(a.color)
    print(a.type)



    #使用类名调用-------类名.属性名
    print(Dog.name)
    print(a.name)
    # Dog.eat()
    # print(Dog.type)

    #调用对象方法
    a.run()
    a.eat()

    Dog.run()
    #调用类方法:
    Dog.run()
    a.run()